Distributed control packet processing

ABSTRACT

Packet switch operating methods and packet switches, using first processing circuitry of the packet switch, specify a configuration for a control packet processing procedure implemented by different second processing circuitry of the packet switch, communicate the configuration to the second processing circuitry, and using the second processing circuitry, receive a control packet, examine contents of the control packet, and process the control packet according to the control packet processing procedure, the control packet processing procedure being configured according to the configuration.

RELATED APPLICATION DATA

This application is related to simultaneously filed U.S. patentapplication Ser. No. 11/933,307 entitled “Distributed Control PacketTransmission” and naming Jie Hu and Cory Dean Gordon as inventors.

TECHNICAL FIELD

The present invention, in various embodiments, relates to distributedcontrol packet processing.

BACKGROUND OF THE INVENTION

Service providers are increasingly deploying Ethernet networks overwhich they offer many different services to subscribers. To ensure theservices meet parameters imposed by the service provider and/or thesubscribers, service providers may use layer-two control protocols toconfigure, monitor, and manage their Ethernet networks. For example,continuity check messages may be used to monitor end-to-end connectivityof a service and spanning tree bridge protocol data units may be used toprevent network loops.

BRIEF DESCRIPTION OF THE DRAWINGS

Preferred embodiments of the invention are described below withreference to the following accompanying drawings.

FIG. 1 is a block diagram of a network.

FIG. 2 is a block diagram of another network.

FIG. 3 is a chart illustrating control packet timing.

FIG. 4 is a block diagram of yet another network.

FIG. 5 is a block diagram of a packet switch.

FIG. 6 is an isometric view of a packet switch.

FIG. 7 is a block diagram of a further network.

FIG. 8 is a block diagram of a still further network.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

According to one aspect of the invention, a packet switch includes firstprocessing circuitry and second processing circuitry. The secondprocessing circuitry is configured to receive a control packet from aport of the packet switch and to update a status of a layer-two controlprotocol with respect to the port based on information conveyed by thecontrol packet. The second processing circuitry may be configured toprevent the control packet from being forwarded to the first processingcircuitry. The control packet conforms to the layer-two controlprotocol. The first processing circuitry is coupled to the secondprocessing circuitry and is configured to receive the informationdescribing the status and to change a configuration of the secondprocessing circuitry based on the information.

The second processing circuitry may be configured to receiveconfiguration information affecting the status of the layer-two controlprotocol with respect to the port from the first processing circuitryand in response periodically transmit control packets conforming to thelayer-two protocol that are based on the configuration informationwithout receiving additional information from the first processingcircuitry.

In one configuration, the packet switch may include a switching fabricconnected to the port and to the first processing circuitry. The firstprocessing circuitry may be configured to forward a second controlpacket to the port via the switching fabric.

The packet switch may include third processing circuitry configured toreceive a second control packet from a different second port of thepacket switch and to update a second status of the layer-two controlprotocol with respect to the second port based on information conveyedby the second control packet. The second control packet may conform tothe layer-two control protocol. The first processing circuitry may becoupled to the third processing circuitry and may be configured toreceive information describing the second status and to change aconfiguration of the second processing circuitry and/or the thirdprocessing circuitry based on the information describing the secondstatus.

The switching fabric may be connected to the first and second ports andthe second and third processing circuitry. The switching fabric may beconfigured to relay packets between the first port and the second port.The second processing circuitry may be configured to forward a controlpacket conforming to the layer-two protocol to the second port via theswitching fabric.

The second processing circuitry may be coupled to the third processingcircuitry and the second processing circuitry may be configured toinstruct the third processing circuitry to transmit a control packetconforming to the layer-two control protocol to the second port.

In one configuration, the packet switch may include a control moduleincluding the first processing circuitry, a first input/output moduleincluding the second processing circuitry, a second input/output moduleincluding the third processing circuitry, and a chassis. The chassis mayhouse the first input/output module, the second input/output module, andthe control module.

FIG. 1 illustrates a network 100. Network 100 includes a packet switch102, and two devices 104 and 106. Packet switch 102 includes controlcircuitry 108, input/output circuitry 110, input/output circuitry 112,and four ports 114, 116, 118, and 120. Input/output circuitry 110 andinput/output circuitry 112 are both connected to control circuitry 108.Input/output circuitry 110 is connected to a subset of the ports ofpacket switch 102, namely ports 114 and 116. Input/output circuitry 112is connected to other ports of packet switch 102, namely ports 118 and120. Port 114 is connected to device 104 and port 118 is connected todevice 106. Of course, packet switch 102 could include additional portsand additional input/output circuitry. Four ports and two instances ofinput/output circuitry have been illustrated for simplicity.

Control circuitry 108, input/output circuitry 110, and input/outputcircuitry 112 may comprise circuitry configured to implement desiredprogramming provided by appropriate media in at least one embodiment.For example, each of control circuitry 108, input/output circuitry 110,and input/output circuitry 112 may be implemented as one or more of aprocessor and/or other structure configured to execute executableinstructions including, for example, software and/or firmwareinstructions, and/or hardware circuitry. Exemplary embodiments includehardware logic, programmable gate arrays, field programmable gatearrays, application specific integrated circuits, network processingunits, state machines, and/or other structures alone or in combinationwith a processor. These examples are for illustration; otherconfigurations are possible.

In one configuration, input/output circuitry 110 and input/outputcircuitry 112 may be implemented as network processing units programmedto perform the functionality described herein and control circuitry 108may be implemented as a processor programmed to perform thefunctionality described herein.

Devices 104 and 106 may be devices capable of sending and receivingpackets (e.g., Ethernet packet switches, routers, computers, etc.).Devices 104 and 106 may communicate with packet switch 102 and withother devices connected directly or indirectly to packet switch 102. Forexample, device 104 may send Ethernet packets addressed to a destinationdevice (not illustrated) via packet switch 102. Upon receiving theEthernet packets, packet switch 102 may forward the packets via a portof packet switch 102 connected directly or indirectly to the destinationdevice.

In one configuration, devices 104 and 106 may communicate with packetswitch 102 using control packets (e.g., Institute of Electrical andElectronics Engineers (IEEE) 802.1ag connectivity fault managementprotocol data units (CFMPDUs), bridge protocol data units (BPDUs), IEEE802.1AB Link Layer Discovery Protocol (LLDP) packets, Internet GroupManagement Protocol (IGMP) packets, etc.). Control packets may performmany different purposes in a network such as network 100. For example,some control packets (e.g., IEEE 802.3ah Operations, Administration andMaintenance (OAM) control packets and CFMPDUs) may be used to facilitatetesting of a network such as continuity testing, bandwidth testing, orerror rate testing.

Other control packets (e.g., LLDP control packets) may enable a devicein a network to request configuration information describing theconfiguration of another device in the network. A device receiving therequest for configuration information may reply using a control packetcontaining the requested information.

Still other control packets (e.g., BPDUs) may convey informationdescribing a characteristic or configuration of a network. A devicereceiving the configuration information may alter its own configurationbased on the information. For example, upon receiving a topology changenotice within a BPDU, a packet switch may block or unblock one or moreof its ports.

Generally, control packets are considered part of a control plane of anetwork rather than part of a data plane of a network. Control packetsmay be transmitted in-band along with data plane packets in someconfigurations. Often, control packets may be contained within a networkrather than being forwarded to an end user or device connected to thenetwork.

A control packet may be associated with a control protocol. For example,a CFMPDU may be associated with the CFM protocol. A device (e.g., apacket switch) may support one or more control protocols. In otherwords, the device may be configured to receive and process controlpackets associated with the protocol according to the protocol. To doso, the device may implement a control packet processing procedure forcontrol packets associated with the protocol. The control packetprocessing procedure may specify an action to be taken upon receiving aparticular control packet associated with the protocol.

For example, upon receiving an LLDP control packet from device 104, acontrol packet processing procedure (e.g., a state machine) of packetswitch 102 may specify that an LLDP control packet containingconfiguration information requested by the received LLDP control packetbe transmitted to device 104. Or, by way of another example, uponreceiving a loopback message (LBM) contained within a CFMPDU from device104, a control packet processing procedure of packet switch 102 mayspecify that packet switch 102 should transmit a loopback reply message.

Known packet switches may implement control packet processing proceduresin control circuitry. Accordingly, control packets received on a port ofthe known switch may be detected by input/output circuitry and forwardedto the control circuitry for processing according to the control packetprocessing procedure. However, such known packet switches may performunacceptably when they receive a large number of control packets.

For example, if the known packet switch has a large number of ports andis configured to transmit a CCM control packet and receive a CCM controlpacket on each port every ten milliseconds, the number of controlpackets that the control circuitry will need to either create andtransmit or receive and analyze may overwhelm the capabilities of thecontrol circuitry. Consequently, known packet switches might not be ableto rely on CCMs for rapid detection of connectivity issues. Transmittingevery ten milliseconds may enable the packet switch to detect andmitigate network connectivity problems within an acceptable amount oftime (e.g., thirty milliseconds).

According to another aspect of the invention, a packet switch operatingmethod includes using first processing circuitry of the packet switch tospecify a configuration for a control packet processing procedureimplemented by different second processing circuitry of the packetswitch and communicating the configuration to the second processingcircuitry. The method also includes using the second processingcircuitry to receive a control packet, examine contents of the controlpacket, and process the control packet according to the control packetprocessing procedure. The control packet processing procedure isconfigured according to the configuration.

The control packet may conform to a layer-two control protocol and thepacket switch may be configured to process control packets according tothe layer-two control protocol. Furthermore, the control packet may bereceived from another packet switch configured to process controlpackets according to the layer-two control protocol.

The control packet may include a request for information describing aconfiguration of the packet switch and the method may includetransmitting a second control packet including the informationdescribing the configuration of the packet switch in response toreceiving the first control packet.

The control packet may convey information describing a characteristic ofa network to which the packet switch is connected and processing thecontrol packet may include modifying a configuration of the packetswitch based on the information. For example, processing the controlpacket may include changing an operational state of a port of the packetswitch from which the second processing circuitry received the controlpacket.

Processing the control packet may include forwarding at least a portionof the control packet to the first processing circuitry. The method mayinclude using the second processing circuitry to receive a secondcontrol packet and to process the second control packet according to thecontrol packet processing procedure without forwarding a portion of thesecond control packet or the entire second control packet to the firstprocessing circuitry.

The control packet processing procedure may also be implemented bydifferent third processing circuitry of the packet switch. The methodmay include using the first processing circuitry to specify a differentsecond configuration for the control packet processing procedure andcommunicating the second configuration to the third processingcircuitry. The method may further include using the third circuitry toreceive a second control packet and process the second control packetaccording to the control packet processing procedure implemented by thethird processing circuitry. The control packet processing procedureimplemented by the third processing circuitry may be configuredaccording to the second configuration.

Processing the control packet using the second processing circuitry mayinclude specifying a different third configuration for the controlpacket processing procedure implemented by the third processingcircuitry. The method may include communicating the third configurationto the third processing circuitry.

According to another aspect of the invention, a packet switch operatingmethod includes using first processing circuitry of the packet switch tospecify a configuration for a control packet processing procedureimplemented by different second processing circuitry of the packetswitch, communicating the configuration to the second processingcircuitry, and using the second processing circuitry to transmit controlpackets according to the control packet processing procedure. Thecontrol packet processing procedure may be configured according to theconfiguration. The control packet processing procedure may include astate machine configured to implement a layer-two control protocolfeature.

The control packets may be Ethernet packets conforming to a layer-twocontrol protocol. Transmitting the control packets may include formingthe control packets and transmitting the control packets to anotherdevice via a port of the packet switch. In some configurations, thefirst processing circuitry might not be aware that the second processingcircuitry has transmitted the control packets.

The configuration may specify a frequency with which the secondprocessing circuitry should transmit individual ones of the controlpackets. The configuration may specify another device to which thesecond processing circuitry should transmit the control packets andtransmitting the control packets may include transmitting the controlpackets to the other device via a port of the packet switch.

The method may include using the second processing circuitry to receivea request to transmit a particular control frame from the firstprocessing circuitry. The request may include at least a portion of theparticular control frame. The method may also include using the secondprocessing circuitry to transmit the particular control frame via a portof the packet switch to another device connected to the port.

The control packets may be Institute of Electrical and ElectronicsEngineers (IEEE) 802.1ag connectivity fault management protocol dataunits (CFMPDUs) such as continuity check messages (CCMs), IEEE 802.1ABLink Layer Discovery Protocol (LLDP) packets, IEEE 802.3ah Operations,Administration and Maintenance (OAM) packets, Link Aggregation ControlProtocol (LACP) packets, Spanning Tree Protocol (STP) packets, STPUplink Fast packets, Rapid Spanning Tree Protocol (RSTP) packets,Multiple Spanning Tree Protocol (MSTP) packets, Cisco Discovery Protocol(CDP) packets, Per VLAN Spanning Tree (PVST) packets, IEEE 802.1xpackets, Unidirectional Link Detection (UDLD) packets, Port AggregationProtocol (PAGP) packets, marker protocol packets, Generic AttributeRegistration Protocol (GARP) Virtual Local Area Network (VLAN)Registration Protocol (GVRP) packets, GARP Multicast RegistrationProtocol (GMRP) packets, IEEE 802.1ak Multiple Registration Protocol(MRP) packets, International Telecommunications Union—Telecommunications(ITU-T) Y.1731 Ethernet OAM packets, or IGMP packets.

Returning now to FIG. 1, packet switch 102 may process large numbers ofcontrol packets without overwhelming control circuitry 108. To do so,control circuitry 108 may receive a desired control protocolconfiguration from a user or management system and then configureinput/output circuitry 110 and/or input/output circuitry 112 to performpart or all of the control packet processing associated with the controlprotocol.

Input/output circuitry 110 and 112 may be configured to perform acontrol packet processing procedure associated with the control protocolbut may rely on one or more parameters in performing the procedure. Auser may supply these parameters to control circuitry 108, which maythen provide the parameters to input/output circuitry 110 and 112.

For example, the control packet processing procedure may be a CCMtransmitting procedure which, when executed by input/output circuitry110, causes input/output circuitry 110 to form CCMs and transmit theCCMs at a particular rate. A user or management system may supplycontrol circuitry 108 with a CCM transmission rate and maintenanceassociation identification and control circuitry 108 may then configureinput/output circuitry 110 with the rate and the maintenance associationidentification. In some configurations, once input/output circuitry 110has been configured by control circuitry 108, input/output circuitry 110may transmit CCMs independent of control circuitry 108. In other words,input/output circuitry 110 may form and transmit CCMs without furtherinput or direction from control circuitry 108. Consequently, controlcircuitry 108 might not receive or be aware of individual CCMstransmitted by input/output circuitry 110.

In some configurations, input/output circuitry 110 and 112 may performthe same control packet processing procedure but may each receivedifferent configurations from control circuitry 108. For example,input/output circuitry 110 may be configured to transmit CCMs at a rateto a MEP residing on device 104 and input/output circuitry 112 may beconfigured to transmit CCMs at the same rate but to a different MEPresiding on device 106.

The control packet processing procedure may alternatively oradditionally process control packets received by the input/outputcircuitry. Processing a control packet using the control packetprocessing procedure may cause a state transition within a state machineassociated with the control packet processing procedure. For example,input/output circuitry 110 may be capable of monitoring BPDUs receivedfrom device 104 via port 114 and notifying control circuitry 108 inresponse to receiving a particular BPDU.

By way of example, control circuitry 108 may configure input/outputcircuitry 110 to notify control circuitry 108 if input/output circuitry110 receives a BPDU containing a topology change notice (TCN). In thismanner, input/output circuitry 110 may perform the burdensome chore ofreceiving and processing BPDUs that do not contain TCNs for controlcircuitry 108, thereby reducing the load on control circuitry 108. Inresponse to being notified of a TCN by input/output circuitry 110,control circuitry 108 may make a configuration change to input/outputcircuitry 110. For example, control circuitry 108 may configureinput/output circuitry 110 to block port 114.

In some configurations, control circuitry 108 might not be aware that acontrol packet has been received by input/output circuitry 110. Forexample, input/output circuitry 110 might receive a BPDU that does notcontain a TCN and therefore might not make control circuitry 108 awareof the BPDU by preventing the BPDU from being forwarded to controlcircuitry 108 (e.g., by discarding the BPDU after determining that theBPDU does not contain a TCN).

In other configurations, input/output circuitry 110 may forward acontrol packet to control circuitry 108 without processing the receivedcontrol packet. For example, input/output circuitry 110 might receive aCFMPDU containing a Link Trace Message (LTM) sent by device 104. Thecontrol packet processing procedure implemented on input/outputcircuitry 110 might not be configured to process the LTM. Consequently,input/output circuitry 110 may forward the LTM to control circuitry 108.In response to receiving the LTM, control circuitry 108 may form aresponse CFMPDU and forward the response CFMPDU to device 104 viainput/output circuitry 110.

Alternatively, upon receiving the LTM sent by device 104, input/outputcircuitry 110 may send a message to control circuitry 108 informingcontrol circuitry 108 that the LTM was received instead of forwardingthe LTM itself to control circuitry 108. In response, control circuitry108 may instruct input/output circuitry 110 to form the response CFMPDUand transmit the response CFMPDU to device 104.

Various control packet processing procedures may be implemented oninput/output circuitry 110 and 112 so that the amount of control packetprocessing performed by control circuitry 108 is reduced. For example,control packet processing procedures for handling frequently received orfrequently transmitted control packets may be implemented oninput/output circuitry 110 and 112 and control packet processingprocedures for handling rarely received and rarely transmitted controlpackets may be implemented on control circuitry 108.

In one configuration, additional input/output circuitry (notillustrated) may be connected to port 114. In this configuration,input/output circuitry 110 may be configured to implement control packetprocessing procedures for port 114 for a first set of control protocolsand the additional input/output circuitry may be configured to implementcontrol packet processing procedures for port 114 for a second set ofcontrol protocols.

Consequently, the burden of processing control packets may bedistributed among input/output circuitry 110 and 112 (and in some cases,additional input/output circuitry) and control circuitry 108 rather thanbeing performed substantially entirely by control circuitry 108 as isdone in some known packet switches.

According to another aspect of the invention, a packet switch operatingmethod includes using first processing circuitry of the packet switch toconfigure different second processing circuitry of the packet switch toperiodically create layer-two control packets at a rate and to forwardthe layer-two control packets to a destination at the rate. The methodalso includes using the second processing circuitry to create thecontrol packets at the rate and forwarding the control packets to thedestination. Creating the control packets may include creating thecontrol packets without having previously received a copy of the controlpackets from the first processing circuitry.

The layer-two control packets may be CCMs conforming to the IEEE 802.1agstandard and/or the ITU-T Y.1731 standard and the destination may be aremote maintenance endpoint implemented on a device coupled to thepacket switch. Alternatively, the layer-two control packets may bespanning tree bridge protocol data units.

The method may include using the first processing circuitry of thepacket switch to configure different third processing circuitry of thepacket switch to periodically create second layer-two control packets ata second rate and to forward the second layer-two control packets to adifferent second destination at the second rate and using the thirdprocessing circuitry to create the second control packets at the secondrate and forward the second control packets to the second destination.

Forwarding the control packets may include forwarding the controlpackets to a port of the packet switch via a switching fabric of thepacket switch. Forwarding the second control packets may includeforwarding the second control packets to the port of the packet switch.The first port may be connected to the third processing circuitry.

The method may also include using the second processing circuitry toreceive a CCM from the destination. The CCM may include a defectindicator. The method may also include, in response to receiving theCCM, using the second processing circuitry to inform the thirdprocessing circuitry of the defect indicator and subsequent to receivingthe CCM, using the second processing circuitry to create third controlpackets at the rate and forward the third control packets to thedestination. The third control packets may include the defect indicator.

Subsequent to informing the third processing circuitry, the method mayalso include using the third processing circuitry to create fourthcontrol packets at the second rate and to forward the fourth controlpackets to the second destination. The fourth control packets mayinclude the defect indicator.

The method may also include using the second processing circuitry toreceive a CCM from the remote maintenance endpoint. The CCM may includea defect indicator. The method may further include using the secondprocessing circuitry to inform the first processing circuitry of thedefect indicator in response to receiving the CCM and subsequent toreceiving the CCM, using the second processing circuitry to createsecond control packets at the rate and forward the control packets tothe remote maintenance endpoint. The second control packets may includedefect indicators.

According to another aspect of the invention, a packet switch operatingmethod includes using first processing circuitry of the packet switch toinstruct second processing circuitry of the packet switch to monitorlayer-two control packets received by the second processing circuitryand to notify the first processing circuitry if a condition related totiming of receipt of the layer-two control packets by the secondcircuitry has been satisfied. The method also includes using the secondprocessing circuitry to receive the control packets, determining, basedon one of the received control packets, that the condition is satisfied,and notifying the first processing circuitry that the condition issatisfied.

The method may also include using the second processing circuitry toreceive a loopback message (LBM) CFMPDU or link trace message (LTM)CFMPDU and forwarding at least a portion of the LBM or LTM to the firstprocessing circuitry. The layer-two control packets may be connectivityfault management protocol data units (CFMPDUs) conforming to theInstitute of Electrical and Electronics Engineers (IEEE) 802.1agstandard and/or the ITU-T Y.1731 standard. The one received controlpacket may be a Continuity Check Message (CCM).

Instructing the second processing circuitry may include providing to thesecond processing circuitry an identifier identifying a deviceoriginating the CCMs and a fault period comprising an amount of time.Determining the condition is satisfied may include determining that thefault period has expired since receiving the one control packet and thatno additional CCMs have been received by the second processing circuitryfrom the device during the fault period.

Instructing using the first processing circuitry may include instructingthe second processing circuitry to monitor layer-two control packetssent by a first maintenance endpoint and received by the secondprocessing circuitry. The method may include using the second circuitryto receive a layer-two control packet from a second maintenanceendpoint, determine that the second circuitry was not instructed tomonitor layer-two control packets received from the second maintenanceendpoint, and notify the first processing circuitry that the secondcircuitry received the layer-two control packet from the secondmaintenance endpoint.

The method may include using the first processing circuitry of thepacket switch to instruct third processing circuitry of the packetswitch to monitor second layer-two control packets received by the thirdprocessing circuitry and to notify the first processing circuitry if asecond condition related to timing of receipt of the second layer-twocontrol packets by the third circuitry has been satisfied. The methodmay also include using the third processing circuitry to receive thesecond control packets, determining, based on one of the received secondcontrol packets, that the second condition is satisfied, and notifyingthe first processing circuitry that the second condition is satisfied.

The second processing circuitry may receive the control packets via afirst port of the packet switch and the third processing circuitry mayreceive the second control packets via a different second port of thepacket switch. The instructing using the first processing circuitry mayinclude instructing the second processing circuitry to monitor layer-twocontrol packets sent by a first maintenance endpoint and received by thesecond processing circuitry. The method may also include using thesecond processing circuitry to receive a layer-two control packet from asecond maintenance endpoint, to determine that the second processingcircuitry is not configured to determine whether layer-two controlpackets received from the second maintenance endpoint satisfy the firstcondition, and to notify the third processing circuitry that the secondprocessing circuitry will determine whether control packets subsequentlyreceived by the second processing circuitry from the second maintenanceendpoint satisfy the first condition.

FIG. 2 illustrates a network 200. Network 200 includes packet switch102. However, in FIG. 2, ports 116 and 120 of packet switch 102 are notillustrated. Port 114 of packet switch 102 is connected to device 204,which is connected to device 202. Similarly, port 118 of packet switch102 is connected to device 212, which is connected to device 210.Devices 204 and 212 may be packet switches in one configuration.Although device 202 might not be physically connected to packet switch102, it may be in communication with packet switch 102 via device 204and therefore may be coupled to packet switch 102.

Input/output circuitry 110 includes a MEP 206, which may be associatedwith a MEP 208 located on device 202. MEP 206 and MEP 208 may cooperateto monitor connectivity between packet switch 102 and device 202. To doso, MEP 206 may send CCMs to MEP 208. MEP 208 may receive the CCMs andmonitor for missing CCMs that may have been sent by MEP 206 but whichare not received by MEP 208. In a similar manner, MEP 206 may monitorCCMs sent by MEP 208.

To initiate the transmission of CCMs to MEP 208 and the analysis of CCMsreceived from MEP 208, control circuitry 108 may configure a controlpacket processing procedure on input/output circuitry 110. For example,control circuitry 108 may send a message to input/output circuitry 110that includes a maintenance association identifier for MEP 208, afrequency with which input/output circuitry 110 should transmit CCMs,and a timing condition related to the reception of CCMs from MEP 208.

Subsequent to being configured, input/output circuitry 110 may beginforming and transmitting CCMs having the maintenance associationidentifier to device 202 via port 114 at the frequency. Input/outputcircuitry 110 may continue forming and transmitting CCMs at the ratewithout any further interaction with control circuitry 108 untilinstructed otherwise by control circuitry 108. Note that input/outputcircuitry 110 may itself create the CCMs rather than receiving the CCMsfrom control circuitry 108 and then simply forwarding the CCMs to device204.

Input/output circuitry 110 may also begin processing CCMs received fromMEP 208 subsequent to being configured by control circuitry 108. Indoing so, input/output circuitry 110 may monitor received CCMs havingthe maintenance association identifier and inform control circuitry 108if the timing condition is satisfied. In one configuration, the timingcondition may specify a fault period. The fault period may be a maximumamount of time that may pass without receiving a CCM having themaintenance association identifier before CCM should notify controlcircuitry 108.

FIG. 3 is a chart 300 illustrating one example of timing associated witha fault period. At times 1, 2, 3, 4, and 5 on time axis 302,input/output circuitry 110 receives CCM packets 304 from MEP 208.Packets 304 may be received at a substantially regular interval sinceMEP 208 may be configured to transmit CCM packets 304 at a particularrate. Accordingly, input/output circuitry 110 may expect to receive aCCM at times 6, 7, and 8. However, as indicated at 306, input/outputcircuitry 110 does not receive a CCM having the maintenance identifierfrom MEP 208 at times 6, 7, or 8.

In one configuration, input/output circuitry 110 may be configured tostart or reset a timer each time MEP 206 receives a CCM from MEP 208having the maintenance identifier. If the timer reaches an amount oftime equal to the fault period prior to subsequently receiving anotherCCM from MEP 208 having the maintenance identifier, input/outputcircuitry 110 may determine that the fault period has expired and inresponse may notify control circuitry 108. Accordingly, at time 5input/output circuitry 110 may start or reset a timer and at time 8 thetimer may reach the fault period, indicated as 308 in chart 300.

Returning now to FIG. 2, input/output circuitry 112 may include a MEP214 and device 210 may contain a MEP 216. Control circuitry 108 mayconfigure input/output circuitry 112 to transmit CCMs to MEP 216 and toprocess CCMs received from MEP 216 in a manner similar to that describedabove in relation to input/output circuitry 110. Input/output circuitry112 may be configured to execute substantially the same control packetprocessing procedure as input/output circuitry 110.

However, control circuitry 108 may configure the control packetprocessing procedure of input/output circuitry 112 with parameters thatdiffer from the parameters used to configure the control packetprocessing procedure of input/output circuitry 110. For example, controlcircuitry 108 may configure input/output circuitry 112 with a differentmaintenance association identifier since MEPs 214 and 216 may belong toa different maintenance association than MEPs 206 and 208.

Similarly, control circuitry 108 may configure input/output circuitry112 to transmit CCMs to MEP 216 at a lower rate than the rate at whichinput/output circuitry 110 transmits CCMs to MEP 208. A different ratemay be used, for example, because device 210 might not be capable ofreceiving CCMs at the same rate as device 202.

The control packet processing procedure implemented by input/outputcircuitry 110 and 112 may perform additional functions. For example,input/output circuitry 110 may receive a CCM belonging to a maintenanceassociation that contains a remote defect indicator (RDI) (e.g., the RDIdefined by the IEEE 802.1ag standard). In response, input/outputcircuitry 110 may notify control circuitry 108 of the RDI andinput/output circuitry 110 may include the RDI in CCMs subsequentlytransmitted by input/output circuitry 110 that also belong to themaintenance association.

Furthermore, input/output circuitry 110 may notify input/outputcircuitry 112 of the RDI so that input/output circuitry 112 may includethe RDI in CCMs it transmits that are associated with the maintenanceassociation. Alternatively, control circuitry 108 may, in response toreceiving notification of the RDI from input/output circuitry 110,notify input/output circuitry 112 of the RDI.

The control packet processing procedure may also implement otherfunctions. For example, the procedure may participate in jitter,latency, and/or bandwidth measurements made using CCMs. In some cases,the procedure may participate in a loopback or link trace. In othercases, the procedure may simply forward LBM and LTM requests to controlcircuitry 108.

FIG. 4 illustrates a network 400 including packet switch 102 and devices202, 204, 210, 212, and 402. Device 402 may communicate with packetswitch 102 using one of two different paths. A first path may traversedevice 212 and port 118 and a second path may traverse device 204 andport 114. Since device 402 is connected to both devices 204 and 212, aloop is created involving devices 204, 402, 212, and packet switch 102.These devices may use a spanning tree protocol to prevent packets fromcirculating through the loop. Accordingly, in one configuration thespanning tree protocol may block the connection between device 402 anddevice 204 so that device 402 communicates with packet switch 102 viadevice 212. Device 402 may include a MEP 408 that communicates with aMEP 406 located in input/output circuitry 112.

Device 202 may have connectivity to packet switch 102, which may bemonitored using MEPs 206 and 208. Furthermore, device 402 may haveconnectivity to device 202 via packet switch 102. Accordingly, MEPs 206,208, 406, and 408 may belong to a same maintenance association.

Control circuitry 108 may configure input/output circuitry 110 toreceive and analyze CCMs from MEP 208 and to notify control circuitry108 if a timing condition related to the CCMs is satisfied. However,since the link between device 402 and device 204 is blocked, controlcircuitry 108 might not configure input/output circuitry 110 to receiveand analyze CCMs from MEP 408. Instead, control circuitry 108 mayconfigure input/output circuitry 112 to receive and analyze CCMs fromMEP 408.

If device 212 fails, spanning tree BPDUs may be used to detect thefailure and to unblock the link between device 402 and device 204.Consequently, CCMs transmitted by MEP 408 may be received byinput/output circuitry 110 rather than input/output circuitry 112. Sincecontrol circuitry 108 did not previously configure input/outputcircuitry 110 to process CCMs received from MEP 408, input/outputcircuitry 110 may, upon receiving a CCM from MEP 408, notify controlcircuitry 108 that a CCM was received from MEP 408. In response, controlcircuitry 108 may configure input/output circuitry 110 to process CCMsreceived from MEP 408. Alternatively, control circuitry 108 mayinitially configure input/output circuitry 110 to process CCMs from aMEP that input/output circuitry 110 might not have been aware of priorto receiving a CCM from the MEP, such as the CCM received from MEP 408.

Since input/output circuitry 112 does not receive CCMs from MEP 408 dueto the failure of device 212, input/output circuitry 112, which isconfigured to monitor CCMs from MEP 408 may at some point determine thata timing condition has been satisfied and notify control circuitry 108.In response, control circuitry 108 may re-configure input/outputcircuitry 112 so that input/output circuitry 112 no longer monitors CCMsfrom MEP 408 since input/output circuitry 110 may now be monitoring CCMsfrom MEP 408.

Alternatively, input/output circuitry 110 may, upon receiving a CCM fromMEP 408, notify input/output circuitry 112 that input/output circuitry110 will be handling CCMs from MEP 408 and that input/output circuitry112 need not monitor for CCMs from MEP 408 any longer.

FIG. 5 is a detailed block diagram of packet switch 102. As illustratedby FIG. 5, packet switch 102 includes a switching fabric circuitry 502.Switching fabric circuitry 502 may be connected to input/outputcircuitry 110 via connection 508, to input/output circuitry 112 viaconnection 510, to port 114 via connection 504, and to port 118 viaconnection 506. Furthermore, input/output circuitry 110 may be connectedto input/output circuitry 112 via connection 516. As was previouslyillustrated, control circuitry 108 may be connected to input/outputcircuitry 110 via connection 512 and to input/output circuitry 112 viaconnection 514.

Switching fabric circuitry 502 may forward packets it receives to adestination. For example, switching fabric circuitry 502 may receivepackets, including control packets, from input/output circuitry 110 andforward the packets to port 114, port 118, and/or input/output circuitry112.

Connection 516 may enable communication between input/output circuitry110 and input/output circuitry 112. For example, connection 516 mayenable input/output circuitry 110 to instruct input/output circuitry 112to include an RDI in CCMs transmitted by input/output circuitry 112.

In some configurations, control circuitry 108 may be connected toswitching fabric circuitry 502 (connection not illustrated) so thatcontrol packets formed by control circuitry 108 may be forwarded byfabric 502 to port 114 and/or port 118. For example, input/outputcircuitry 110 may forward a LBM received from device 202 to controlcircuitry 108. Control circuitry 108 may respond to the LBM by sending aCFMPDU to device 202 via switching fabric circuitry 502 and port 114.

FIG. 6 illustrates an example physical configuration 600 of packetswitch 102. Physical configuration 600 includes a chassis 602; twocontrol modules 604 and 606; four input/output modules 608, 610, 612,and 614; and two fabric modules 616 and 618. Chassis 602 may house themodules and may provide power and connectivity between the modules.Individual modules may be removed from chassis 602. In oneconfiguration, an individual module may be removed from chassis 602without interrupting operation of other modules housed by chassis 602.

Control module 604 may include control circuitry 108. Control module 606may be a backup control module that is activated if control module 604becomes disabled. Accordingly, control module 606 may include circuitrythat is substantially a duplicate of control circuitry 108.

Input/output module 608 may include input/output circuitry 110 andinput/output module 610 may include input/output circuitry 112. Inputoutput modules 612 and 614 may include additional input/output circuitryof packet switch 102 not depicted in FIGS. 1-5.

Fabric module 616 may include switch fabric circuitry 502. Fabric module618 may be a backup fabric module that is activated if fabric module 604becomes disabled. Accordingly, fabric module 606 may include circuitrythat is substantially a duplicate of switch fabric circuitry 502.

Accordingly, in one configuration, control circuitry 108 may bephysically distinct from input/output circuitry 110 and frominput/output circuitry 112 since it may be part of removable controlmodule 604, which may be physically separated from chassis 602 withoutseparating either input/output module 608 or input/output module 610from chassis 602. Furthermore, input/output circuitry 110 may bephysically distinct from input/output circuitry 112.

Of course, other physical configurations are also possible. For example,control circuitry 108 may be located in a first chassis, input/outputcircuitry 110 may be located in a second chassis, and input/outputcircuitry 112 may be located in a third chassis.

FIG. 7 illustrates a network 700. Network 700 includes packet switch 102and devices 202, 204, 210, and 212 of FIG. 2. However, network 700 has adifferent MEP configuration than FIG. 2. Furthermore, switching fabriccircuitry 502 and connections 504, 506, 508, 510, 512, 514, and 516(discussed above in relation to FIG. 5) are also depicted.

Several MEP pairs are illustrated in FIG. 5. MEPs 704 and 702 are afirst MEP pair that may be used to monitor a connection between device202 and input/output circuitry 110. The first MEP pair may monitor theconnection using CCMs as was described above. MEPs 710 and 712 are asecond MEP pair that may be used to monitor a connection between device210 and input/output circuitry 112. Like the first MEP pair, the secondMEP pair may monitor the connection using CCMs as was described above.

MEPs 706 and 708 are a third MEP pair. The third MEP pair may monitor aconnection extending from device 210, through device 212 to port 118,through connection 506 to switching fabric circuitry 502, and throughconnection 508 to input/output circuitry 110. Although the second andthird MEP pairs both monitor connections between packet switch 102 anddevice 210, the MEP pairs monitor slightly different connections. Theconnections associated with the second and third MEP pairs both monitorbetween port 118 and device 210. However, the connection associated withthe third MEP pair additionally monitors through switching fabriccircuitry 502. Accordingly, the second MEP pair may monitor a connectionwhich approximates a connection between device 210 and port 118 and thethird MEP pair may monitor a connection which approximates a connectionbetween device 210 and port 114.

Control circuitry 108 may configure input/output circuitry 110 totransmit CCMs to MEP 706. Input/output circuitry 110 may do so bygenerating CCMs intended for MEP 706 and forwarding the CCMs toswitching fabric circuitry 502. Switching fabric circuitry 502 mayforward the CCMs to port 118, which may transmit the CCMs to device 212where they are relayed to device 210. Alternatively, input/outputcircuitry 110 (or control circuitry 108) may instruct input/outputcircuitry 112 to generate CCMs intended for MEP 706 that appear to besourced by MEP 708. Input/output circuitry 112 may forward these CCMs toport 118 where they are relayed to device 210. Using this alternativeapproach may conserve forwarding capacity of switching fabric circuitry502.

According to another aspect of the invention, a packet switch operatingmethod includes using first processing circuitry of the packet switch toconfigure different second processing circuitry of the packet switch toperiodically transmit control packets to a destination device via a portof the packet switch. Subsequent to the configuring, the method includesusing the second processing circuitry to transmit the control packets tothe destination device via the port during moments in time when thefirst processing circuitry is non-operational. The first processingcircuitry may be unable to communicate with the second processingcircuitry when the first processing circuitry is non-operational.

The method may include using the first processing circuitry to configurethe second processing circuitry to monitor control packets received bythe second processing circuitry and to notify the first processingcircuitry if a condition related to timing of receipt of the receivedcontrol packets by the second circuitry has been satisfied. The methodmay also include using the second processing circuitry to monitor thecontrol packets received by the second processing circuitry to determinewhether the condition is satisfied. The second processing circuitry maymonitor the control packets during the moments in time when the firstprocessing circuitry is non-operational.

Configuring the second processing circuitry may include providing, tothe second processing circuitry, an identifier identifying a deviceoriginating the CCMs and a fault period comprising an amount of time.Monitoring the control packets may include determining whether the faultperiod has expired since receiving a most recently received one of thecontrol packets.

The method may include using the second processing circuitry todetermine that the first processing circuitry is non-operational.Subsequent to determining that the first processing circuitry isnon-operational, the method may include receiving one of the controlpackets and in response to receiving the one control packet, determiningthat the condition is satisfied.

The method may also include using third processing circuitry todetermine that the first processing circuitry is non-operational. Thethird processing circuitry may be configured to replace thefunctionality of the first processing circuitry. In response todetermining that the first processing circuitry is non-operational, themethod may include replacing the functionality of the first processingcircuitry with the third processing circuitry. Subsequent to replacingthe functionality, the method may include using the second processingcircuitry to notify the third processing circuitry that the condition issatisfied.

FIG. 8 illustrates a network 800 including packet switch 102 and devices202, 204, 210, and 212. Packet switch 102 include ports 114 and 118,input/output circuitry 110 and 112, and control circuitry 108 which havebeen described above. In addition, packet switch 102 includes controlcircuitry 802.

Control circuitry 802 may be connected to input/output circuitry 110 viaconnection 804, to input/output circuitry 112 via connection 806, and tocontrol circuitry 108 via connection 808. Control circuitry 802, in oneconfiguration, may be substantially similar to control circuitry 108 andmay be configured as a backup for control circuitry 108. Accordingly,control circuitry 108 and control circuitry 802 may communicate witheach other so that they are synchronized.

For example, control circuitry 108 may configure a control packetprocessing procedure of input/output circuitry 110. Before or afterconfiguring the control packet processing procedure, control circuitry108 may notify control circuitry 802 that control circuitry 108configured the control packet processing procedure so that if controlcircuitry 108 becomes non-operational, control circuitry 802 may takeover for control circuitry 108 having an accurate knowledge of theconfiguration of input/output circuitry 110.

By way of example, control circuitry 108 may configure input/outputcircuitry 110 to transmit CCMs at a particular rate. Input/outputcircuitry 110 may begin transmitting CCMs at the rate. Subsequently,control circuitry 108 may become non-operational. For example, controlcircuitry 108 may lose power or may become unresponsive. However, sinceinput/output circuitry 110 might not rely on control circuitry 108 totransmit CCMs after having been configured by control circuitry 108,input/output circuitry 110 may continue to transmit CCMs at the ratedespite the fact that control circuitry 108 is non-operational.

Control circuitry 802 may detect that control circuitry 108 isnon-operational. Consequently, control circuitry 802 may perform thefunctionality of control circuitry 108. However, after taking over forcontrol circuitry 108, control circuitry 802 might not need tocommunicate with input/output circuitry 110 regarding the transmissionof CCMs at the rate unless control circuitry 802 needs to alter the rateor alter another aspect of the CCM transmission since input/outputcircuitry 110, once configured, may transmit CCMs independent of controlcircuitry 108 or control circuitry 802.

By way of another example, control circuitry 108 may configureinput/output circuitry 110 to monitor CCMs received from a MEP and tonotify control circuitry 108 if a timing condition is satisfied, as wasdescribed above in relation to FIG. 3. Subsequently control circuitry108 may become non-operational. Input/output circuitry 110 may continueto monitor CCMs and determine whether the timing condition is satisfiedeven though control circuitry 108 may be non-operational. If the timingcondition is not satisfied, input/output circuitry, 110 need notinteract with control circuitry 108.

However, if the timing condition is satisfied, input/output circuitry110 may detect that control circuitry 108 is non-operational andtherefore might not notify control circuitry 108 regarding thesatisfaction of the timing condition. Instead, input/output circuitry110 may determine whether control circuitry 802 has taken over forcontrol circuitry 108. If control circuitry 802 has taken over,input/output circuitry 110 may notify control circuitry 802 regardingthe satisfaction of the timing condition. If control circuitry 802 hasnot taken over, input/output circuitry 110 may wait until controlcircuitry 802 has taken over before notifying control circuitry 802regarding the satisfaction of the timing condition.

According to another aspect of the invention, an article of manufactureincludes media including programming configured to cause processingcircuitry (e.g., a microprocessor) to perform processing that executesone or more of the methods described above. The programming may beembodied in a computer program product(s) or article(s) of manufacture,which can contain, store, or maintain programming, data, and/or digitalinformation for use by or in connection with an instruction executionsystem including processing circuitry. In some cases, the programmingmay be referred to as software, hardware, or firmware.

For example, the media may be electronic, magnetic, optical,electromagnetic, infrared, or semiconductor media. Some more specificexamples of articles of manufacture including media with programminginclude, but are not limited to, a portable magnetic computer diskette(such as a floppy diskette or a ZIP® disk manufactured by the IomegaCorporation of San Diego, Calif.), hard drive, random access memory,read only memory, flash memory, cache memory, and/or otherconfigurations capable of storing programming, data, or other digitalinformation.

In compliance with the statute, the invention has been described inlanguage more or less specific as to structural and methodical features.It is to be understood, however, that the invention is not limited tothe specific features shown and described, since the means hereindisclosed comprise preferred forms of putting the invention into effect.The invention is, therefore, claimed in any of its forms ormodifications within the proper scope of the appended claimsappropriately interpreted in accordance with the doctrine ofequivalents.

1. A method of operating a packet switch comprising the steps of: usingfirst processing circuitry of the packet switch, specifying aconfiguration for a control packet processing procedure implemented bydifferent second processing circuitry of the packet switch,communicating the configuration to the second processing circuitry;using the second processing circuitry: receiving a control packet from aport of the packet switch, examining contents of the control packet,processing the control packet according to the control packet processingprocedure, updating a status of a control protocol with respect to theport based on information conveyed by the control packet, and preventingthe control packet from being forwarded to the first processingcircuitry, the control packet processing procedure being configuredaccording to the configuration and the control packet conforming to thecontrol protocol; and using the first processing circuitry, accessinginformation describing the status and changing the configuration of thecontrol packet processing procedure based on the information.
 2. Themethod of claim 1 wherein: the control packet conforms to a layer-twocontrol protocol; the packet switch is configured to process controlpackets according to the layer-two control protocol; and the receivingcomprises receiving the control packet from another packet switchconfigured to process control packets according to the layer-two controlprotocol.
 3. The method of claim 1: wherein the control packet comprisesa first control packet and the first control packet comprises a requestfor information describing a configuration of the packet switch; andfurther comprising transmitting a second control packet comprising theinformation describing the configuration of the packet switch inresponse to the receiving the first control packet.
 4. The method ofclaim 1 wherein the control packet conveys information describing acharacteristic of a network to which the packet switch is connected andthe processing the control packet comprises modifying a configuration ofthe packet switch based on the information.
 5. The method of claim 1:wherein the configuration comprises a first configuration, the controlpacket comprises a first control packet; and further comprising: usingthe first processing circuitry, specifying a different secondconfiguration for the control packet processing procedure, the controlpacket processing procedure also being implemented by different thirdprocessing circuitry of the packet switch; communicating the secondconfiguration to the third processing circuitry; and using the thirdcircuitry, receiving a second control packet and processing the secondcontrol packet according to the control packet processing procedureimplemented by the third processing circuitry, the control packetprocessing procedure implemented by the third processing circuitry beingconfigured according to the second configuration.
 6. The method of claim5: wherein the processing the first control packet using the secondprocessing circuitry comprises specifying a different thirdconfiguration for the control packet processing procedure implemented bythe third processing circuitry; and further comprising communicating thethird configuration to the third processing circuitry.
 7. The method ofclaim 1 wherein the processing comprises changing an operational stateof the port.
 8. The method of claim 1 wherein the contents of thecontrol packet comprise a request for a response and the processing ofthe control packet according to the control packet processing procedurecomprises the second processing circuitry transmitting a response packetcomprising the response as a result of examining the contents of thecontrol packet, the response packet having a different destinationaddress than the control packet received by the second processingcircuitry.
 9. The method of claim 1 wherein the processing of thecontrol packet according to the control packet processing procedure bythe second processing circuitry comprises the second processingcircuitry changing a status of a port of the packet switch from enabledto disabled or from disabled to enabled.
 10. The method of claim 1wherein the control packet is a connectivity fault management protocoldata unit (CFMPDU) conforming to the Institute of Electrical andElectronics Engineers (IEEE) 802.1ag standard and/or the ITU-T Y.1731standard, or the control packet is a bridge protocol data unit (BPDU).11. A method of operating a packet switch comprising the steps of: usingfirst processing circuitry of the packet switch, instructing secondprocessing circuitry of the packet switch to monitor layer-two controlpackets received by the second processing circuitry and to notify thefirst processing circuitry if a condition has been satisfied; using thesecond processing circuitry, receiving the control packets; determining,based on one of the received control packets, that the condition issatisfied; and notifying the first processing circuitry that thecondition is satisfied; wherein the instructing using the firstprocessing circuitry comprises instructing the second processingcircuitry to monitor layer-two control packets sent by a first sourceand received by the second processing circuitry; and further comprising:using the second circuitry, receiving a layer-two control packet from asecond source; using the second circuitry, determining that the secondcircuitry is not configured to monitor layer-two control packetsreceived from the second source; and using the second circuitry,notifying the first processing circuitry that the second circuitryreceived the layer-two control packet from the second source.
 12. Themethod of claim 11 wherein the layer-two control packets areconnectivity fault management protocol data units (CFMPDUs) conformingto the Institute of Electrical and Electronics Engineers (IEEE) 802.1agstandard and/or the ITU-T Y.1731 standard, the one received controlpacket is a Continuity Check Message (CCM), and further comprising,using the second processing circuitry, receiving a loopback message(LBM) CFMPDU or link trace message (LTM) CFMPDU and forwarding at leasta portion of the LBM or LTM to the first processing circuitry.
 13. Themethod of claim 11 wherein: the control packets are CCMs compliant withthe IEEE 802.1ag standard and/or the ITU-T Y.1731 standard; theinstructing comprises providing an identifier identifying a deviceoriginating the CCMs and a fault period comprising an amount of time tothe second processing circuitry; and the determining comprisesdetermining that the fault period has expired since receiving the onecontrol packet and that no additional CCMs have been received by thesecond processing circuitry from the device during the fault period. 14.The method of claim 11 wherein the control packets comprise firstcontrol packets, the condition comprises a first condition, and furthercomprising: using the first processing circuitry of the packet switch,instructing third processing circuitry of the packet switch to monitorsecond layer-two control packets received by the third processingcircuitry and to notify the first processing circuitry if a secondcondition related to timing of receipt of the second layer-two controlpackets by the third circuitry has been satisfied; and using the thirdprocessing circuitry, receiving the second control packets; determining,based on one of the received second control packets, that the secondcondition is satisfied; and notifying the first processing circuitrythat the second condition is satisfied.
 15. The method of claim 14:further comprising using the second processing circuitry, notifying thethird processing circuitry that the second processing circuitry willdetermine whether control packets subsequently received by the secondprocessing circuitry from the second source satisfy the first condition.16. A packet switch comprising: first processing circuitry; secondprocessing circuitry configured to receive a first control packet from afirst port of the packet switch and to update a first status of alayer-two control protocol with respect to the first port based oninformation conveyed by the first control packet, the first controlpacket conforming to the layer-two control protocol; wherein the firstprocessing circuitry is coupled to the second processing circuitry andis configured to receive information describing the first status and tochange a configuration of the second processing circuitry based on theinformation describing the first status; third processing circuitryconfigured to receive a second control packet from a different secondport of the packet switch and to update a second status of the layer-twocontrol protocol with respect to the second port based on informationconveyed by the second control packet, the second control packetconforming to the layer-two control protocol; and wherein the firstprocessing circuitry is coupled to the third processing circuitry and isconfigured to receive information describing the second status and tochange a configuration of the second processing circuitry and/or thethird processing circuitry based on the information describing thesecond status.
 17. The packet switch of claim 16 further comprising: aswitching fabric connected to the first and second ports and the secondand third processing circuitry and configured to relay packets betweenthe first port and the second port; and wherein the second processingcircuitry is configured to forward a control packet conforming to thelayer-two protocol to the second port via the switching fabric.
 18. Thepacket switch of claim 16 wherein the second processing circuitry iscoupled to the third processing circuitry and the second processingcircuitry is configured to instruct the third processing circuitry totransmit a control packet conforming to the layer-two control protocolto the second port.
 19. The packet switch of claim 16 furthercomprising: a control module comprising the first processing circuitry;a first input/output module comprising the second processing circuitry;a second input/output module comprising the third processing circuitry;and a chassis housing the first input/output module, the secondinput/output module, and the control module.